package com.ctshk.rpc.goods.service;

import com.ctshk.common.model.PageResponse;
import com.ctshk.common.model.TokenUser;
import com.ctshk.rpc.goods.dto.ShoppingSpecialPageDTO;
import com.ctshk.rpc.goods.dto.ShoppingSpecialDetailedDTO;
import com.ctshk.rpc.goods.req.ShoppingSpecialPageReq;
import com.ctshk.rpc.goods.req.ShoppingSpecialReq;

/**
 * <p>
 * 商城专题 服务类
 * </p>
 *
 * @author 姜斌文
 * @since 2021-04-30
 */
public interface IShoppingSpecialService {
    /**
     * 新增商城专题
     * @param addReq 商城专题入参对象
     * @param tokenUser 用户对象
     */
    void addShoppingSpecial(ShoppingSpecialReq addReq, TokenUser tokenUser);

    /**
     * 更新商城专题
     * @param upReq 更新入参
     * @param tokenUser 用户对象
     */
    void updateShoppingSpecial(ShoppingSpecialReq upReq, TokenUser tokenUser);

    /**
     * 分页查询商城专题列表
     * @param pageReq  分页条件入参
     * @param currentUser  登录用户
     * @return 分页列表数据
     */
    PageResponse<ShoppingSpecialPageDTO> findShoppingSpecialPageList(ShoppingSpecialPageReq pageReq, TokenUser currentUser);

    /**
     * 根据ID查询商城专题明细信息
     * @param req 商城专题对象
     * @param currentUser  登录用户
     * @return 商城专题明细对象
     */
    ShoppingSpecialDetailedDTO findShoppingSpecialDetailed(ShoppingSpecialPageReq req, TokenUser currentUser);
}
